//---------------------------------------------------------------------------
#ifndef ArcClassH
#define ArcClassH
#include <vcl.h>
#include "ObjectClass.h"
//---------------------------------------------------------------------------
class CArc {
private:
	TCanvas* canvas;
	static double dx;
	struct {
		int x, y;
	}
	pts[4];
	int ip, it;
	bool direction; //from pos to trn - true
	bool outlines;
	int outlinescount;
	void showOutlines();
public:
	CArc(TCanvas* canvas);
	void setPoint(int index, int x, int y);
	void setPoints(int x0, int y0, int x1, int y1, int x2, int y2, int x3, int y3);
	void setDx(double dx);
	void setOutlines(bool outlines);
	void setOutlinesCount(int outlinescount);
	void setIndexes(int ip, int it);
	void setDirection(bool direction);
	int getX(int index);
	int getY(int index);
	int getPositionIndex();
	int getTransitionIndex();
	int getRestPoint(int xm, int ym);
	bool getOutlines();
	int getOutlinesCount();
	bool getDirection();
	void show();
	void hide();
	bool isSelect(int xm, int ym);
	UnicodeString save();
};
double CArc::dx = arc_default_dx;
//---------------------------------------------------------------------------
#endif
